<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <script>
        var a=5;
        function test(){
            a=0;
            console.log(a);//0
            console.log(this.a);//undefined
            var a;
            console.log(a);//0
        }
        new test();
        // 当执行 new test() 这条语句的时候，有变量提升 a 变量，test 函数内部有局部变量 a，打印的时候使用的是局部变量 a，test 函数内部 没有 this. a 进行赋值操作，所以 this.a 的结果是 undefined
    </script>
</body>
</html>